// src/mocks/index.ts
import { createProdMockServer } from "vite-plugin-mock/client";

// src/mocks/data/user.ts
import Mock2 from "mockjs";

// src/mocks/util.ts
import Mock from "mockjs";
var successResponse = (data = null, message = "\u8BF7\u6C42\u6210\u529F", code = 200) => {
  return Mock.mock({
    data,
    code,
    message
  });
};
var errorResponse = (data, message, code = 500) => {
  return Mock.mock({
    data,
    message,
    code
  });
};

// src/mocks/data/user.ts
function createFakeUserList() {
  return [
    {
      token: "peak-vue3-admin-token-peak",
      userId: 1,
      username: "peak",
      password: "123456",
      realName: "PeakVue3Admin",
      avatar: "http://119.91.22.164:8085/images/11411538250643115avatar.jpg",
      sex: "\u7537",
      age: 24,
      address: "\u90D1\u5DDE",
      phone: "1666666666",
      email: "1666666666@163.com",
      // loginTime: dayjs().format("YYYY-MM-DD HH:mm:ss"),
      roles: ["admin"],
      login_time: Mock2.Random.datetime("yyyy-MM-dd A HH:mm:ss")
    },
    {
      token: "peak-vue3-admin-token-mengyi",
      userId: 2,
      username: "mengyi",
      password: "123456",
      realName: "\u8499\u6BC5",
      avatar: "http://119.91.22.164:8085/images/11411538250643115avatar.jpg",
      sex: "\u7537",
      age: 25,
      address: "\u90D1\u5DDE",
      phone: "1666666666",
      email: "1666666666@163.com",
      roles: ["common"],
      loginTime: Mock2.Random.datetime("yyyy-MM-dd A HH:mm:ss")
    }
  ];
}
var user_default = [
  /**
   * 登录
   */
  {
    url: "/mock/user/login",
    method: "post",
    timeout: 300,
    response: ({ body }) => {
      let { username, password } = body;
      if (!username)
        errorResponse(null, "\u7528\u6237\u540D\u4E0D\u80FD\u4E3A\u7A7A", 400);
      if (!password)
        return errorResponse(null, "\u5BC6\u7801\u4E0D\u80FD\u4E3A\u7A7A", 400);
      const userInfo = createFakeUserList().find(
        (item) => username === item.username && password === item.password
      );
      if (userInfo) {
        return successResponse({ authorization: userInfo.token }, "\u767B\u5F55\u6210\u529F", 200);
      }
      return errorResponse(null, "\u8D26\u53F7\u6216\u8005\u5BC6\u7801\u9519\u8BEF", 400);
    }
  },
  /**
   * 退出
   */
  {
    url: "/mock/user/logout",
    method: "post",
    timeout: 300,
    response: () => {
      return successResponse();
    }
  },
  /**
   * 获取用户信息接口
   */
  {
    url: "/mock/user/info",
    method: "get",
    timeout: 300,
    response: ({ headers }) => {
      if (!headers?.authorization)
        return errorResponse(null, "\u8BF7\u5148\u767B\u5F55", 401);
      const accessToken = headers.authorization;
      let data = createFakeUserList().find((item) => item.token === accessToken);
      if (!data)
        return errorResponse(null, "\u7528\u6237\u4FE1\u606F\u4E0D\u5B58\u5728", 404);
      return successResponse(data, "\u8BF7\u6C42\u6210\u529F", 200);
    }
  }
];

// src/mocks/data/menu.ts
var menuList = [
  {
    path: "/home/index",
    name: "Home",
    component: "/home/index",
    meta: {
      title: "\u9996\u9875",
      icon: "menu-home",
      roles: ["admin"],
      activeMenu: "/home/index",
      isHidden: false,
      isLink: false,
      isFull: false,
      isAffix: true,
      isKeepAlive: false,
      isBreadcrumbHidden: false,
      isAlwaysShow: false
    }
  },
  {
    path: "/article",
    name: "Article",
    component: "/article/index",
    meta: {
      title: "\u6587\u7AE0\u7BA1\u7406",
      icon: "menu-table",
      roles: ["admin"],
      isHidden: false,
      isLink: false,
      isFull: false,
      isAffix: false,
      isKeepAlive: false,
      isBreadcrumbHidden: false
    }
  },
  {
    path: "/article/read-write/:article_id?",
    name: "ArticleRW",
    component: "/article/read-write",
    meta: {
      title: "\u6587\u7AE0\u64CD\u4F5C",
      icon: "menu-table",
      roles: ["admin"],
      activeMenu: "/article",
      isHidden: true,
      isLink: false,
      isFull: false,
      isAffix: false,
      isKeepAlive: false,
      isBreadcrumbHidden: true
    }
  },
  {
    path: "/category",
    name: "Category",
    component: "/category/index",
    meta: {
      title: "\u5206\u7C7B\u7BA1\u7406",
      icon: "menu-table",
      roles: ["admin"],
      isHidden: false,
      isLink: false,
      isFull: false,
      isAffix: false,
      isKeepAlive: false,
      isBreadcrumbHidden: false,
      isAlwaysShow: false
    }
  },
  {
    path: "/tags",
    name: "Tags",
    component: "/tags/index",
    meta: {
      title: "\u6807\u7B7E\u7BA1\u7406",
      icon: "menu-table",
      roles: ["admin"],
      isHidden: false,
      isLink: false,
      isFull: false,
      isAffix: false,
      isKeepAlive: false,
      isBreadcrumbHidden: false,
      isAlwaysShow: false
    }
  },
  {
    path: "/blogroll",
    name: "Blogroll",
    component: "/blogroll/index",
    meta: {
      title: "\u53CB\u60C5\u7BA1\u7406",
      icon: "menu-table",
      roles: ["admin"],
      isHidden: false,
      isLink: false,
      isFull: false,
      isAffix: false,
      isKeepAlive: false,
      isBreadcrumbHidden: false,
      isAlwaysShow: false
    }
  },
  {
    path: "/system",
    name: "System",
    redirect: "/system/user",
    meta: {
      title: "\u7CFB\u7EDF\u7BA1\u7406",
      icon: "menu-system",
      roles: ["admin"],
      isHidden: false,
      isLink: false,
      isFull: false,
      isAffix: false,
      isKeepAlive: false,
      isBreadcrumbHidden: false,
      isAlwaysShow: false
    },
    children: [
      {
        path: "/system/role",
        name: "Role",
        component: "/system/role/index",
        meta: {
          title: "\u89D2\u8272\u7BA1\u7406",
          icon: "menu-system-role",
          roles: ["admin"],
          isHidden: false,
          isLink: false,
          isFull: false,
          isAffix: false,
          isKeepAlive: false,
          isBreadcrumbHidden: false,
          isAlwaysShow: false
        }
      },
      {
        path: "/system/user",
        name: "User",
        component: "/system/user/index",
        meta: {
          title: "\u7528\u6237\u7BA1\u7406",
          icon: "menu-system-user",
          roles: ["admin"],
          isHidden: false,
          isLink: false,
          isFull: false,
          isAffix: false,
          isKeepAlive: false,
          isBreadcrumbHidden: false,
          isAlwaysShow: false
        }
      },
      {
        path: "/system/menu",
        name: "Menu",
        component: "/system/menu/index",
        meta: {
          title: "\u83DC\u5355\u7BA1\u7406",
          icon: "menu-system-menu",
          roles: ["admin"],
          isHidden: false,
          isLink: false,
          isFull: false,
          isAffix: false,
          isKeepAlive: false,
          isBreadcrumbHidden: false,
          isAlwaysShow: false
        }
      }
    ]
  }
];
var menu_default = [
  /**
   * 获取权限菜单接口
   */
  {
    url: `/mock/menus/tree`,
    method: "get",
    timeout: 300,
    response: ({ headers }) => {
      if (!headers?.authorization)
        return errorResponse(null, "\u8BF7\u5148\u767B\u5F55", 401);
      return successResponse(menuList, "\u8BF7\u6C42\u6210\u529F", 200);
    }
  }
];

// src/mocks/index.ts
function setupProdMockServer() {
  createProdMockServer([...user_default, ...menu_default]);
}
export {
  setupProdMockServer
};
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsic3JjL21vY2tzL2luZGV4LnRzIiwgInNyYy9tb2Nrcy9kYXRhL3VzZXIudHMiLCAic3JjL21vY2tzL3V0aWwudHMiLCAic3JjL21vY2tzL2RhdGEvbWVudS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiY29uc3QgX19pbmplY3RlZF9maWxlbmFtZV9fID0gXCJEOlxcXFxwcm9qZWN0XFxcXG15X3N0dWR5X3Byb2plY3RcXFxccGVhay1ibG9nLWFkbWluXFxcXHNyY1xcXFxtb2Nrc1xcXFxpbmRleC50c1wiO2NvbnN0IF9faW5qZWN0ZWRfZGlybmFtZV9fID0gXCJEOlxcXFxwcm9qZWN0XFxcXG15X3N0dWR5X3Byb2plY3RcXFxccGVhay1ibG9nLWFkbWluXFxcXHNyY1xcXFxtb2Nrc1wiO2NvbnN0IF9faW5qZWN0ZWRfaW1wb3J0X21ldGFfdXJsX18gPSBcImZpbGU6Ly8vRDovcHJvamVjdC9teV9zdHVkeV9wcm9qZWN0L3BlYWstYmxvZy1hZG1pbi9zcmMvbW9ja3MvaW5kZXgudHNcIjsvLyBpbXBvcnQgeyBjcmVhdGVQcm9kTW9ja1NlcnZlciB9IGZyb20gXCJ2aXRlLXBsdWdpbi1tb2NrL2VzL2NyZWF0ZVByb2RNb2NrU2VydmVyXCI7XHJcbmltcG9ydCB7IGNyZWF0ZVByb2RNb2NrU2VydmVyIH0gZnJvbSBcInZpdGUtcGx1Z2luLW1vY2svY2xpZW50XCI7XHJcbmltcG9ydCB1c2VyIGZyb20gXCIuL2RhdGEvdXNlclwiO1xyXG5pbXBvcnQgbWVudSBmcm9tIFwiLi9kYXRhL21lbnVcIjtcclxuXHJcbi8vIGNvbnN0IG1vZHVsZXMgPSBpbXBvcnQubWV0YS5nbG9iKFwiLi8qKi8qLHRzXCIsIHsgZWFnZXI6IHRydWUgfSk7XHJcbi8vIGNvbnN0IG1vY2tNb2R1bGVzOiBhbnlbXSA9IFtdO1xyXG4vLyBPYmplY3Qua2V5cyhtb2R1bGVzKS5mb3JFYWNoKChrZXkpID0+IHtcclxuLy8gICBpZiAoa2V5LmluY2x1ZGVzKFwiL19cIikpIHtcclxuLy8gICAgIHJldHVybjtcclxuLy8gICB9XHJcbi8vICAgbW9ja01vZHVsZXMucHVzaCguLi4obW9kdWxlcyBhcyBSZWNvcmRhYmxlKVtrZXldLmRlZmF1bHQpO1xyXG4vLyB9KTtcclxuLy8gY29uc29sZS5sb2coMTIzMTIzKTtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBzZXR1cFByb2RNb2NrU2VydmVyKCkge1xyXG4gIGNyZWF0ZVByb2RNb2NrU2VydmVyKFsuLi51c2VyLCAuLi5tZW51XSk7XHJcbn1cclxuIiwgImNvbnN0IF9faW5qZWN0ZWRfZmlsZW5hbWVfXyA9IFwiRDpcXFxccHJvamVjdFxcXFxteV9zdHVkeV9wcm9qZWN0XFxcXHBlYWstYmxvZy1hZG1pblxcXFxzcmNcXFxcbW9ja3NcXFxcZGF0YVxcXFx1c2VyLnRzXCI7Y29uc3QgX19pbmplY3RlZF9kaXJuYW1lX18gPSBcIkQ6XFxcXHByb2plY3RcXFxcbXlfc3R1ZHlfcHJvamVjdFxcXFxwZWFrLWJsb2ctYWRtaW5cXFxcc3JjXFxcXG1vY2tzXFxcXGRhdGFcIjtjb25zdCBfX2luamVjdGVkX2ltcG9ydF9tZXRhX3VybF9fID0gXCJmaWxlOi8vL0Q6L3Byb2plY3QvbXlfc3R1ZHlfcHJvamVjdC9wZWFrLWJsb2ctYWRtaW4vc3JjL21vY2tzL2RhdGEvdXNlci50c1wiOy8qKlxyXG4gKiBcdTc1MjhcdTYyMzdcdTRGRTFcdTYwNkZcdTc2RjhcdTUxNzMgbW9ja1x1NjNBNVx1NTNFM1xyXG4gKi9cclxuXHJcbmltcG9ydCB7IE1vY2tNZXRob2QgfSBmcm9tIFwidml0ZS1wbHVnaW4tbW9ja1wiO1xyXG5pbXBvcnQgTW9jayBmcm9tIFwibW9ja2pzXCI7XHJcbi8vIGltcG9ydCB7IGRheWpzIH0gZnJvbSBcImVsZW1lbnQtcGx1c1wiO1xyXG5pbXBvcnQgeyBlcnJvclJlc3BvbnNlLCBzdWNjZXNzUmVzcG9uc2UgfSBmcm9tIFwiLi4vdXRpbFwiO1xyXG5cclxuLyoqXHJcbiAqIFx1NzUxRlx1NjIxMFx1NzUyOFx1NjIzN1x1NjU3MFx1NjM2RVxyXG4gKiBAcmV0dXJuc1xyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUZha2VVc2VyTGlzdCgpIHtcclxuICByZXR1cm4gW1xyXG4gICAge1xyXG4gICAgICB0b2tlbjogXCJwZWFrLXZ1ZTMtYWRtaW4tdG9rZW4tcGVha1wiLFxyXG4gICAgICB1c2VySWQ6IDEsXHJcbiAgICAgIHVzZXJuYW1lOiBcInBlYWtcIixcclxuICAgICAgcGFzc3dvcmQ6IFwiMTIzNDU2XCIsXHJcbiAgICAgIHJlYWxOYW1lOiBcIlBlYWtWdWUzQWRtaW5cIixcclxuICAgICAgYXZhdGFyOiBcImh0dHA6Ly8xMTkuOTEuMjIuMTY0OjgwODUvaW1hZ2VzLzExNDExNTM4MjUwNjQzMTE1YXZhdGFyLmpwZ1wiLFxyXG4gICAgICBzZXg6IFwiXHU3NTM3XCIsXHJcbiAgICAgIGFnZTogMjQsXHJcbiAgICAgIGFkZHJlc3M6IFwiXHU5MEQxXHU1RERFXCIsXHJcbiAgICAgIHBob25lOiBcIjE2NjY2NjY2NjZcIixcclxuICAgICAgZW1haWw6IFwiMTY2NjY2NjY2NkAxNjMuY29tXCIsXHJcbiAgICAgIC8vIGxvZ2luVGltZTogZGF5anMoKS5mb3JtYXQoXCJZWVlZLU1NLUREIEhIOm1tOnNzXCIpLFxyXG4gICAgICByb2xlczogW1wiYWRtaW5cIl0sXHJcbiAgICAgIGxvZ2luX3RpbWU6IE1vY2suUmFuZG9tLmRhdGV0aW1lKFwieXl5eS1NTS1kZCBBIEhIOm1tOnNzXCIpXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICB0b2tlbjogXCJwZWFrLXZ1ZTMtYWRtaW4tdG9rZW4tbWVuZ3lpXCIsXHJcbiAgICAgIHVzZXJJZDogMixcclxuICAgICAgdXNlcm5hbWU6IFwibWVuZ3lpXCIsXHJcbiAgICAgIHBhc3N3b3JkOiBcIjEyMzQ1NlwiLFxyXG4gICAgICByZWFsTmFtZTogXCJcdTg0OTlcdTZCQzVcIixcclxuICAgICAgYXZhdGFyOiBcImh0dHA6Ly8xMTkuOTEuMjIuMTY0OjgwODUvaW1hZ2VzLzExNDExNTM4MjUwNjQzMTE1YXZhdGFyLmpwZ1wiLFxyXG4gICAgICBzZXg6IFwiXHU3NTM3XCIsXHJcbiAgICAgIGFnZTogMjUsXHJcbiAgICAgIGFkZHJlc3M6IFwiXHU5MEQxXHU1RERFXCIsXHJcbiAgICAgIHBob25lOiBcIjE2NjY2NjY2NjZcIixcclxuICAgICAgZW1haWw6IFwiMTY2NjY2NjY2NkAxNjMuY29tXCIsXHJcbiAgICAgIHJvbGVzOiBbXCJjb21tb25cIl0sXHJcbiAgICAgIGxvZ2luVGltZTogTW9jay5SYW5kb20uZGF0ZXRpbWUoXCJ5eXl5LU1NLWRkIEEgSEg6bW06c3NcIilcclxuICAgIH1cclxuICBdO1xyXG59XHJcblxyXG5leHBvcnQgZGVmYXVsdCBbXHJcbiAgLyoqXHJcbiAgICogXHU3NjdCXHU1RjU1XHJcbiAgICovXHJcbiAge1xyXG4gICAgdXJsOiBcIi9tb2NrL3VzZXIvbG9naW5cIixcclxuICAgIG1ldGhvZDogXCJwb3N0XCIsXHJcbiAgICB0aW1lb3V0OiAzMDAsXHJcbiAgICByZXNwb25zZTogKHsgYm9keSB9KSA9PiB7XHJcbiAgICAgIGxldCB7IHVzZXJuYW1lLCBwYXNzd29yZCB9ID0gYm9keTtcclxuICAgICAgaWYgKCF1c2VybmFtZSkgZXJyb3JSZXNwb25zZShudWxsLCBcIlx1NzUyOFx1NjIzN1x1NTQwRFx1NEUwRFx1ODBGRFx1NEUzQVx1N0E3QVwiLCA0MDApO1xyXG4gICAgICBpZiAoIXBhc3N3b3JkKSByZXR1cm4gZXJyb3JSZXNwb25zZShudWxsLCBcIlx1NUJDNlx1NzgwMVx1NEUwRFx1ODBGRFx1NEUzQVx1N0E3QVwiLCA0MDApO1xyXG4gICAgICBjb25zdCB1c2VySW5mbyA9IGNyZWF0ZUZha2VVc2VyTGlzdCgpLmZpbmQoXHJcbiAgICAgICAgKGl0ZW0pID0+IHVzZXJuYW1lID09PSBpdGVtLnVzZXJuYW1lICYmIHBhc3N3b3JkID09PSBpdGVtLnBhc3N3b3JkXHJcbiAgICAgICk7XHJcbiAgICAgIGlmICh1c2VySW5mbykge1xyXG4gICAgICAgIHJldHVybiBzdWNjZXNzUmVzcG9uc2UoeyBhdXRob3JpemF0aW9uOiB1c2VySW5mby50b2tlbiB9LCBcIlx1NzY3Qlx1NUY1NVx1NjIxMFx1NTI5RlwiLCAyMDApO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBlcnJvclJlc3BvbnNlKG51bGwsIFwiXHU4RDI2XHU1M0Y3XHU2MjE2XHU4MDA1XHU1QkM2XHU3ODAxXHU5NTE5XHU4QkVGXCIsIDQwMCk7XHJcbiAgICB9XHJcbiAgfSxcclxuXHJcbiAgLyoqXHJcbiAgICogXHU5MDAwXHU1MUZBXHJcbiAgICovXHJcbiAge1xyXG4gICAgdXJsOiBcIi9tb2NrL3VzZXIvbG9nb3V0XCIsXHJcbiAgICBtZXRob2Q6IFwicG9zdFwiLFxyXG4gICAgdGltZW91dDogMzAwLFxyXG4gICAgcmVzcG9uc2U6ICgpID0+IHtcclxuICAgICAgcmV0dXJuIHN1Y2Nlc3NSZXNwb25zZSgpO1xyXG4gICAgfVxyXG4gIH0sXHJcblxyXG4gIC8qKlxyXG4gICAqIFx1ODNCN1x1NTNENlx1NzUyOFx1NjIzN1x1NEZFMVx1NjA2Rlx1NjNBNVx1NTNFM1xyXG4gICAqL1xyXG4gIHtcclxuICAgIHVybDogXCIvbW9jay91c2VyL2luZm9cIixcclxuICAgIG1ldGhvZDogXCJnZXRcIixcclxuICAgIHRpbWVvdXQ6IDMwMCxcclxuICAgIHJlc3BvbnNlOiAoeyBoZWFkZXJzIH0pID0+IHtcclxuICAgICAgaWYgKCFoZWFkZXJzPy5hdXRob3JpemF0aW9uKSByZXR1cm4gZXJyb3JSZXNwb25zZShudWxsLCBcIlx1OEJGN1x1NTE0OFx1NzY3Qlx1NUY1NVwiLCA0MDEpO1xyXG4gICAgICBjb25zdCBhY2Nlc3NUb2tlbiA9IGhlYWRlcnMuYXV0aG9yaXphdGlvbjtcclxuICAgICAgbGV0IGRhdGEgPSBjcmVhdGVGYWtlVXNlckxpc3QoKS5maW5kKChpdGVtKSA9PiBpdGVtLnRva2VuID09PSBhY2Nlc3NUb2tlbik7XHJcblxyXG4gICAgICBpZiAoIWRhdGEpIHJldHVybiBlcnJvclJlc3BvbnNlKG51bGwsIFwiXHU3NTI4XHU2MjM3XHU0RkUxXHU2MDZGXHU0RTBEXHU1QjU4XHU1NzI4XCIsIDQwNCk7XHJcbiAgICAgIHJldHVybiBzdWNjZXNzUmVzcG9uc2UoZGF0YSwgXCJcdThCRjdcdTZDNDJcdTYyMTBcdTUyOUZcIiwgMjAwKTtcclxuICAgIH1cclxuICB9XHJcbl0gYXMgTW9ja01ldGhvZFtdO1xyXG4iLCAiY29uc3QgX19pbmplY3RlZF9maWxlbmFtZV9fID0gXCJEOlxcXFxwcm9qZWN0XFxcXG15X3N0dWR5X3Byb2plY3RcXFxccGVhay1ibG9nLWFkbWluXFxcXHNyY1xcXFxtb2Nrc1xcXFx1dGlsLnRzXCI7Y29uc3QgX19pbmplY3RlZF9kaXJuYW1lX18gPSBcIkQ6XFxcXHByb2plY3RcXFxcbXlfc3R1ZHlfcHJvamVjdFxcXFxwZWFrLWJsb2ctYWRtaW5cXFxcc3JjXFxcXG1vY2tzXCI7Y29uc3QgX19pbmplY3RlZF9pbXBvcnRfbWV0YV91cmxfXyA9IFwiZmlsZTovLy9EOi9wcm9qZWN0L215X3N0dWR5X3Byb2plY3QvcGVhay1ibG9nLWFkbWluL3NyYy9tb2Nrcy91dGlsLnRzXCI7LyoqXHJcbiAqXHJcbiAqL1xyXG5pbXBvcnQgTW9jayBmcm9tIFwibW9ja2pzXCI7XHJcbi8vIFx1NjIxMFx1NTI5Rlx1NTRDRFx1NUU5NFxyXG5leHBvcnQgY29uc3Qgc3VjY2Vzc1Jlc3BvbnNlID0gKGRhdGE6IGFueSA9IG51bGwsIG1lc3NhZ2UgPSBcIlx1OEJGN1x1NkM0Mlx1NjIxMFx1NTI5RlwiLCBjb2RlID0gMjAwKSA9PiB7XHJcbiAgcmV0dXJuIE1vY2subW9jayh7XHJcbiAgICBkYXRhLFxyXG4gICAgY29kZSxcclxuICAgIG1lc3NhZ2VcclxuICB9KTtcclxufTtcclxuLy8gXHU5NTE5XHU4QkVGXHU1NENEXHU1RTk0XHJcbmV4cG9ydCBjb25zdCBlcnJvclJlc3BvbnNlID0gKGRhdGE6IGFueSwgbWVzc2FnZTogc3RyaW5nLCBjb2RlID0gNTAwKSA9PiB7XHJcbiAgcmV0dXJuIE1vY2subW9jayh7XHJcbiAgICBkYXRhLFxyXG4gICAgbWVzc2FnZSxcclxuICAgIGNvZGVcclxuICB9KTtcclxufTtcclxuIiwgImNvbnN0IF9faW5qZWN0ZWRfZmlsZW5hbWVfXyA9IFwiRDpcXFxccHJvamVjdFxcXFxteV9zdHVkeV9wcm9qZWN0XFxcXHBlYWstYmxvZy1hZG1pblxcXFxzcmNcXFxcbW9ja3NcXFxcZGF0YVxcXFxtZW51LnRzXCI7Y29uc3QgX19pbmplY3RlZF9kaXJuYW1lX18gPSBcIkQ6XFxcXHByb2plY3RcXFxcbXlfc3R1ZHlfcHJvamVjdFxcXFxwZWFrLWJsb2ctYWRtaW5cXFxcc3JjXFxcXG1vY2tzXFxcXGRhdGFcIjtjb25zdCBfX2luamVjdGVkX2ltcG9ydF9tZXRhX3VybF9fID0gXCJmaWxlOi8vL0Q6L3Byb2plY3QvbXlfc3R1ZHlfcHJvamVjdC9wZWFrLWJsb2ctYWRtaW4vc3JjL21vY2tzL2RhdGEvbWVudS50c1wiOy8qKlxuICogXHU4M0RDXHU1MzU1bW9ja1xuICovXG5pbXBvcnQgeyBNb2NrTWV0aG9kIH0gZnJvbSBcInZpdGUtcGx1Z2luLW1vY2tcIjtcbmltcG9ydCB7IGVycm9yUmVzcG9uc2UsIHN1Y2Nlc3NSZXNwb25zZSB9IGZyb20gXCIuLi91dGlsXCI7XG5leHBvcnQgY29uc3QgbWVudUxpc3QgPSBbXG4gIHtcbiAgICBwYXRoOiBcIi9ob21lL2luZGV4XCIsXG4gICAgbmFtZTogXCJIb21lXCIsXG4gICAgY29tcG9uZW50OiBcIi9ob21lL2luZGV4XCIsXG4gICAgbWV0YToge1xuICAgICAgdGl0bGU6IFwiXHU5OTk2XHU5ODc1XCIsXG4gICAgICBpY29uOiBcIm1lbnUtaG9tZVwiLFxuICAgICAgcm9sZXM6IFtcImFkbWluXCJdLFxuICAgICAgYWN0aXZlTWVudTogXCIvaG9tZS9pbmRleFwiLFxuICAgICAgaXNIaWRkZW46IGZhbHNlLFxuICAgICAgaXNMaW5rOiBmYWxzZSxcbiAgICAgIGlzRnVsbDogZmFsc2UsXG4gICAgICBpc0FmZml4OiB0cnVlLFxuICAgICAgaXNLZWVwQWxpdmU6IGZhbHNlLFxuICAgICAgaXNCcmVhZGNydW1iSGlkZGVuOiBmYWxzZSxcbiAgICAgIGlzQWx3YXlzU2hvdzogZmFsc2VcbiAgICB9XG4gIH0sXG4gIHtcbiAgICBwYXRoOiBcIi9hcnRpY2xlXCIsXG4gICAgbmFtZTogXCJBcnRpY2xlXCIsXG4gICAgY29tcG9uZW50OiBcIi9hcnRpY2xlL2luZGV4XCIsXG4gICAgbWV0YToge1xuICAgICAgdGl0bGU6IFwiXHU2NTg3XHU3QUUwXHU3QkExXHU3NDA2XCIsXG4gICAgICBpY29uOiBcIm1lbnUtdGFibGVcIixcbiAgICAgIHJvbGVzOiBbXCJhZG1pblwiXSxcbiAgICAgIGlzSGlkZGVuOiBmYWxzZSxcbiAgICAgIGlzTGluazogZmFsc2UsXG4gICAgICBpc0Z1bGw6IGZhbHNlLFxuICAgICAgaXNBZmZpeDogZmFsc2UsXG4gICAgICBpc0tlZXBBbGl2ZTogZmFsc2UsXG4gICAgICBpc0JyZWFkY3J1bWJIaWRkZW46IGZhbHNlXG4gICAgfVxuICB9LFxuICB7XG4gICAgcGF0aDogXCIvYXJ0aWNsZS9yZWFkLXdyaXRlLzphcnRpY2xlX2lkP1wiLFxuICAgIG5hbWU6IFwiQXJ0aWNsZVJXXCIsXG4gICAgY29tcG9uZW50OiBcIi9hcnRpY2xlL3JlYWQtd3JpdGVcIixcbiAgICBtZXRhOiB7XG4gICAgICB0aXRsZTogXCJcdTY1ODdcdTdBRTBcdTY0Q0RcdTRGNUNcIixcbiAgICAgIGljb246IFwibWVudS10YWJsZVwiLFxuICAgICAgcm9sZXM6IFtcImFkbWluXCJdLFxuICAgICAgYWN0aXZlTWVudTogXCIvYXJ0aWNsZVwiLFxuICAgICAgaXNIaWRkZW46IHRydWUsXG4gICAgICBpc0xpbms6IGZhbHNlLFxuICAgICAgaXNGdWxsOiBmYWxzZSxcbiAgICAgIGlzQWZmaXg6IGZhbHNlLFxuICAgICAgaXNLZWVwQWxpdmU6IGZhbHNlLFxuICAgICAgaXNCcmVhZGNydW1iSGlkZGVuOiB0cnVlXG4gICAgfVxuICB9LFxuICB7XG4gICAgcGF0aDogXCIvY2F0ZWdvcnlcIixcbiAgICBuYW1lOiBcIkNhdGVnb3J5XCIsXG4gICAgY29tcG9uZW50OiBcIi9jYXRlZ29yeS9pbmRleFwiLFxuICAgIG1ldGE6IHtcbiAgICAgIHRpdGxlOiBcIlx1NTIwNlx1N0M3Qlx1N0JBMVx1NzQwNlwiLFxuICAgICAgaWNvbjogXCJtZW51LXRhYmxlXCIsXG4gICAgICByb2xlczogW1wiYWRtaW5cIl0sXG4gICAgICBpc0hpZGRlbjogZmFsc2UsXG4gICAgICBpc0xpbms6IGZhbHNlLFxuICAgICAgaXNGdWxsOiBmYWxzZSxcbiAgICAgIGlzQWZmaXg6IGZhbHNlLFxuICAgICAgaXNLZWVwQWxpdmU6IGZhbHNlLFxuICAgICAgaXNCcmVhZGNydW1iSGlkZGVuOiBmYWxzZSxcbiAgICAgIGlzQWx3YXlzU2hvdzogZmFsc2VcbiAgICB9XG4gIH0sXG4gIHtcbiAgICBwYXRoOiBcIi90YWdzXCIsXG4gICAgbmFtZTogXCJUYWdzXCIsXG4gICAgY29tcG9uZW50OiBcIi90YWdzL2luZGV4XCIsXG4gICAgbWV0YToge1xuICAgICAgdGl0bGU6IFwiXHU2ODA3XHU3QjdFXHU3QkExXHU3NDA2XCIsXG4gICAgICBpY29uOiBcIm1lbnUtdGFibGVcIixcbiAgICAgIHJvbGVzOiBbXCJhZG1pblwiXSxcbiAgICAgIGlzSGlkZGVuOiBmYWxzZSxcbiAgICAgIGlzTGluazogZmFsc2UsXG4gICAgICBpc0Z1bGw6IGZhbHNlLFxuICAgICAgaXNBZmZpeDogZmFsc2UsXG4gICAgICBpc0tlZXBBbGl2ZTogZmFsc2UsXG4gICAgICBpc0JyZWFkY3J1bWJIaWRkZW46IGZhbHNlLFxuICAgICAgaXNBbHdheXNTaG93OiBmYWxzZVxuICAgIH1cbiAgfSxcbiAge1xuICAgIHBhdGg6IFwiL2Jsb2dyb2xsXCIsXG4gICAgbmFtZTogXCJCbG9ncm9sbFwiLFxuICAgIGNvbXBvbmVudDogXCIvYmxvZ3JvbGwvaW5kZXhcIixcbiAgICBtZXRhOiB7XG4gICAgICB0aXRsZTogXCJcdTUzQ0JcdTYwQzVcdTdCQTFcdTc0MDZcIixcbiAgICAgIGljb246IFwibWVudS10YWJsZVwiLFxuICAgICAgcm9sZXM6IFtcImFkbWluXCJdLFxuICAgICAgaXNIaWRkZW46IGZhbHNlLFxuICAgICAgaXNMaW5rOiBmYWxzZSxcbiAgICAgIGlzRnVsbDogZmFsc2UsXG4gICAgICBpc0FmZml4OiBmYWxzZSxcbiAgICAgIGlzS2VlcEFsaXZlOiBmYWxzZSxcbiAgICAgIGlzQnJlYWRjcnVtYkhpZGRlbjogZmFsc2UsXG4gICAgICBpc0Fsd2F5c1Nob3c6IGZhbHNlXG4gICAgfVxuICB9LFxuICB7XG4gICAgcGF0aDogXCIvc3lzdGVtXCIsXG4gICAgbmFtZTogXCJTeXN0ZW1cIixcbiAgICByZWRpcmVjdDogXCIvc3lzdGVtL3VzZXJcIixcbiAgICBtZXRhOiB7XG4gICAgICB0aXRsZTogXCJcdTdDRkJcdTdFREZcdTdCQTFcdTc0MDZcIixcbiAgICAgIGljb246IFwibWVudS1zeXN0ZW1cIixcbiAgICAgIHJvbGVzOiBbXCJhZG1pblwiXSxcbiAgICAgIGlzSGlkZGVuOiBmYWxzZSxcbiAgICAgIGlzTGluazogZmFsc2UsXG4gICAgICBpc0Z1bGw6IGZhbHNlLFxuICAgICAgaXNBZmZpeDogZmFsc2UsXG4gICAgICBpc0tlZXBBbGl2ZTogZmFsc2UsXG4gICAgICBpc0JyZWFkY3J1bWJIaWRkZW46IGZhbHNlLFxuICAgICAgaXNBbHdheXNTaG93OiBmYWxzZVxuICAgIH0sXG4gICAgY2hpbGRyZW46IFtcbiAgICAgIHtcbiAgICAgICAgcGF0aDogXCIvc3lzdGVtL3JvbGVcIixcbiAgICAgICAgbmFtZTogXCJSb2xlXCIsXG4gICAgICAgIGNvbXBvbmVudDogXCIvc3lzdGVtL3JvbGUvaW5kZXhcIixcbiAgICAgICAgbWV0YToge1xuICAgICAgICAgIHRpdGxlOiBcIlx1ODlEMlx1ODI3Mlx1N0JBMVx1NzQwNlwiLFxuICAgICAgICAgIGljb246IFwibWVudS1zeXN0ZW0tcm9sZVwiLFxuICAgICAgICAgIHJvbGVzOiBbXCJhZG1pblwiXSxcbiAgICAgICAgICBpc0hpZGRlbjogZmFsc2UsXG4gICAgICAgICAgaXNMaW5rOiBmYWxzZSxcbiAgICAgICAgICBpc0Z1bGw6IGZhbHNlLFxuICAgICAgICAgIGlzQWZmaXg6IGZhbHNlLFxuICAgICAgICAgIGlzS2VlcEFsaXZlOiBmYWxzZSxcbiAgICAgICAgICBpc0JyZWFkY3J1bWJIaWRkZW46IGZhbHNlLFxuICAgICAgICAgIGlzQWx3YXlzU2hvdzogZmFsc2VcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgcGF0aDogXCIvc3lzdGVtL3VzZXJcIixcbiAgICAgICAgbmFtZTogXCJVc2VyXCIsXG4gICAgICAgIGNvbXBvbmVudDogXCIvc3lzdGVtL3VzZXIvaW5kZXhcIixcbiAgICAgICAgbWV0YToge1xuICAgICAgICAgIHRpdGxlOiBcIlx1NzUyOFx1NjIzN1x1N0JBMVx1NzQwNlwiLFxuICAgICAgICAgIGljb246IFwibWVudS1zeXN0ZW0tdXNlclwiLFxuICAgICAgICAgIHJvbGVzOiBbXCJhZG1pblwiXSxcbiAgICAgICAgICBpc0hpZGRlbjogZmFsc2UsXG4gICAgICAgICAgaXNMaW5rOiBmYWxzZSxcbiAgICAgICAgICBpc0Z1bGw6IGZhbHNlLFxuICAgICAgICAgIGlzQWZmaXg6IGZhbHNlLFxuICAgICAgICAgIGlzS2VlcEFsaXZlOiBmYWxzZSxcbiAgICAgICAgICBpc0JyZWFkY3J1bWJIaWRkZW46IGZhbHNlLFxuICAgICAgICAgIGlzQWx3YXlzU2hvdzogZmFsc2VcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgcGF0aDogXCIvc3lzdGVtL21lbnVcIixcbiAgICAgICAgbmFtZTogXCJNZW51XCIsXG4gICAgICAgIGNvbXBvbmVudDogXCIvc3lzdGVtL21lbnUvaW5kZXhcIixcbiAgICAgICAgbWV0YToge1xuICAgICAgICAgIHRpdGxlOiBcIlx1ODNEQ1x1NTM1NVx1N0JBMVx1NzQwNlwiLFxuICAgICAgICAgIGljb246IFwibWVudS1zeXN0ZW0tbWVudVwiLFxuICAgICAgICAgIHJvbGVzOiBbXCJhZG1pblwiXSxcbiAgICAgICAgICBpc0hpZGRlbjogZmFsc2UsXG4gICAgICAgICAgaXNMaW5rOiBmYWxzZSxcbiAgICAgICAgICBpc0Z1bGw6IGZhbHNlLFxuICAgICAgICAgIGlzQWZmaXg6IGZhbHNlLFxuICAgICAgICAgIGlzS2VlcEFsaXZlOiBmYWxzZSxcbiAgICAgICAgICBpc0JyZWFkY3J1bWJIaWRkZW46IGZhbHNlLFxuICAgICAgICAgIGlzQWx3YXlzU2hvdzogZmFsc2VcbiAgICAgICAgfVxuICAgICAgfVxuICAgIF1cbiAgfVxuXTtcbmV4cG9ydCBkZWZhdWx0IFtcbiAgLyoqXG4gICAqIFx1ODNCN1x1NTNENlx1Njc0M1x1OTY1MFx1ODNEQ1x1NTM1NVx1NjNBNVx1NTNFM1xuICAgKi9cbiAge1xuICAgIHVybDogYC9tb2NrL21lbnVzL3RyZWVgLFxuICAgIG1ldGhvZDogXCJnZXRcIixcbiAgICB0aW1lb3V0OiAzMDAsXG4gICAgcmVzcG9uc2U6ICh7IGhlYWRlcnMgfTogYW55KSA9PiB7XG4gICAgICBpZiAoIWhlYWRlcnM/LmF1dGhvcml6YXRpb24pIHJldHVybiBlcnJvclJlc3BvbnNlKG51bGwsIFwiXHU4QkY3XHU1MTQ4XHU3NjdCXHU1RjU1XCIsIDQwMSk7XG4gICAgICByZXR1cm4gc3VjY2Vzc1Jlc3BvbnNlKG1lbnVMaXN0LCBcIlx1OEJGN1x1NkM0Mlx1NjIxMFx1NTI5RlwiLCAyMDApO1xuICAgIH1cbiAgfVxuXSBhcyBNb2NrTWV0aG9kW107XG4iXSwKICAibWFwcGluZ3MiOiAiO0FBQ0EsU0FBUyw0QkFBNEI7OztBQ0lyQyxPQUFPQSxXQUFVOzs7QUNGakIsT0FBTyxVQUFVO0FBRVYsSUFBTSxrQkFBa0IsQ0FBQyxPQUFZLE1BQU0sVUFBVSw0QkFBUSxPQUFPLFFBQVE7QUFDakYsU0FBTyxLQUFLLEtBQUs7QUFBQSxJ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
